<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Title</title>
</head>
<body>

</body>
<script type="module">
	// 1- 基本用法，直接导出
	// 导出的变量或常量的名字必须与引入的一致
	// 通过import绑定的数据不允许直接修改
	// import {a,b,c,d,fn,fn2} from "./module/mo1.js";
	// // 不允许直接修改
	// // c = 90;
	// fn(90);
	// console.log(c);// 90
	
	// 2- 解构赋值的形式
	// import {a,b,d} from "./module/mo2.js";
	//
	// console.log(a,b,d);// 1 2 4
	
	// 3- 解决冲突
	// import {username,age,b as b3 } from "./module/mo3.js";
	// import {a,b,d} from "./module/mo2.js";
	// console.log(b,b3);//  2 3
	
	// 4- 命名空间
	// import * as suibian from "./module/mo4.js";
	// console.log(suibian.a,suibian.b,suibian.c);// 1 2 3
	
	// 5- 先定义再导出
	// import {a,b6,c,d} from "./module/mo6.js";
	// import {b} from "./module/mo3.js";
	//
	// console.log(a,b,c,d,b6);// 1 3 3 4 6
	
	// 6- 注意
	// 特点：模块只有第一次被引入时执行一次，并对其导出数据进行缓存处理。
	//      后面的引入均来自于缓存！
	import {num,changeNum} from "./module/mo7.js";
	import {num as num2} from "./module/mo7.js";
	console.log(num,num2);// 100 100;
	changeNum(1);
	console.log(num,num2);// 101 101
	
</script>
</html>